using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections;

/// <summary>
/// Summary description for DynamicDisplayI
/// </summary>
public class TransactionDocDisplayI
{

    PageCommonFunctions PCF = new PageCommonFunctions();
    BindControl BC = new BindControl();
    HDDatabase HDD = new HDDatabase();
    HtmlForm frmMainObj = null;
    DataSet dsePageInfoMain = null;
    HtmlForm frmObjTotals = null;
    int rowcount = 0;
    //DataRow drObjectRights = null;
    /// <summary>
    /// Generates the dynamic page based on the page set id.
    /// Page is displayed with basic design. 
    /// Basic design is Two controls in one row and caption in top of that control.
    /// </summary>
    public TransactionDocDisplayI()
    {
        //
        // TODO: Add constructor logic here
        //
    }
    //public void disableControls(Control cntrl)//implemnted by sanal on 30th July 2008
    //{
    //    //string temp = "";
    //    foreach (Control cc in cntrl.Controls)
    //    {
    //        //if (cc.ID!=null)
    //        //    if (cc.ID.ToLower().IndexOf("btnsave") > -1)
    //        //        temp = cc.ID;
    //        if (cc is TextBox)
    //        {
    //            TextBox tb = (TextBox)cc;
    //            tb.Enabled = false;
    //            disableControls(cc);
    //        }
    //        if (cc is DropDownList)
    //        {
    //            DropDownList tb = (DropDownList)cc;
    //            tb.Enabled = false;
    //            disableControls(cc);
    //        }
    //        if (cc is Button)
    //        {
    //            Button tb = (Button)cc;
    //            tb.Visible = false;
    //            disableControls(cc);
    //        }
    //        if (cc is HtmlInputButton)
    //        {
    //            HtmlInputButton tb = (HtmlInputButton)cc;
    //            tb.Visible = false;
    //            //disableControls(cc);
    //        }
    //        if (cc is CheckBox)
    //        {
    //            CheckBox tb = (CheckBox)cc;
    //            tb.Enabled = false;
    //            //disableControls(cc);
    //        }
    //        if (cc is HtmlImage)
    //        {
    //            HtmlImage tb = (HtmlImage)cc;
    //            tb.Style.Add("display", "none");
    //            //disableControls(cc);
    //        }
    //        if (cc is HtmlInputImage)
    //        {
    //            HtmlInputImage tb = (HtmlInputImage)cc;                
    //            tb.Style.Add("display", "none");
    //            //disableControls(cc);
    //        }
    //        if (cc is Image)
    //        {
    //            Image tb = (Image)cc;                
    //            tb.Style.Add("disabled", "true");
    //            //disableControls(cc);
    //        }
    //        if (cc is FileUpload)
    //        {
    //            FileUpload tb = (FileUpload)cc;
    //            tb.Enabled = false;
    //            //disableControls(cc);
    //        }
    //        if (cc is ListBox)
    //        {
    //            ListBox lb = (ListBox)cc;
    //            lb.Enabled = false;
    //        }
    //        disableControls(cc);
    //    }
    //}
    //public Control FindControl(ControlCollection frmControl, string strControlId)
    //{
    //    Control cRet = null;
    //    foreach (Control con in frmControl)
    //    {
    //        if (con.ID != null)
    //            if (con.ID.ToLower() == strControlId.ToLower())
    //                return con;
    //    }
        
    //    foreach (Control cn in frmControl)
    //        if (cn.Controls.Count > 0)
    //            {
    //                cRet = FindControl(cn.Controls, strControlId);
    //                if (cRet != null) break;
    //            }
    //    return cRet;
    //}

    //public DataSet Load(string strPgsId, HtmlForm frmObj, DataSet dsePageInfo, DataSet dsInput)
    //{
    //    bool blnStatus = true;
    //    HtmlTable htaMain = new HtmlTable();
    //    htaMain.ID = "tblDynamicMain1";
    //    htaMain.Width = "100%";
    //    string strPageId = "";
        
    //    dsePageInfoMain = dsePageInfo;

    //    // Added by srivatsan on May 08 2009 for transaction document
    //    dsePageInfo.Tables["Page"].Rows[0]["multiple_recs_page"] = "true";
    //    dsePageInfo.Tables["Page"].Rows[0]["page_view"] = 1;
    //    int controlcount = dsePageInfo.Tables["PageCtrl"].Select("control_visible = 'true'").Length;
    //    dsePageInfo.Tables["Page"].Rows[0]["control_per_row"] = controlcount;
    //    dsePageInfo.Tables["Page"].Rows[0]["first_row_caption_only"] = "true";

    //    //

    //    DataTable dtaPageSet = dsePageInfo.Tables["PageSet"];
    //    DataTable dtaPage = dsePageInfo.Tables["Page"];
    //    DataTable dtaPageKeys = dsePageInfo.Tables["PageKeys"];
    //    DataTable dtaPageCtrl = dsePageInfo.Tables["PageCtrl"];   
    //    dtaPageCtrl.Columns.Add(new DataColumn("attrib_size"));
        
        

    //    for (int i = 0; i < dtaPage.Rows.Count; i++)
    //    {
    //        strPageId = dtaPage.Rows[i]["page_id"].ToString();
    //        string sAF_ROW_ID = dtaPage.Rows[i]["af_row_id"].ToString();
    //        DataTable dtAttrib_Size = HDD.GetDataTable("select attrib_id, attrib_size, attrib_data_type from sy_obj_att obj_att inner join sy_obj obj on obj.af_row_id=obj_att.object_id where obj.object_id='" + dtaPage.Rows[i]["object_id"].ToString() + "'");

    //        foreach (DataRow dr in dtaPageCtrl.Select("page_id='" + sAF_ROW_ID + "'"))
    //        {
    //            DataRow[] drr = dtAttrib_Size.Select("attrib_id = '" + dr["control_attrib_id"].ToString() + "'");
    //            if (drr.Length > 0)
    //            {
    //                if (drr[0]["attrib_data_type"].ToString() == "TX")
    //                    dr["attrib_size"] = drr[0]["attrib_size"].ToString();
    //            }
    //        }

    //        LoadPageMember(dtaPage, frmObj, htaMain, dtaPageCtrl.Select("page_id='" + sAF_ROW_ID + "'", "control_seq asc"), dtaPageKeys, i,dsInput);
    //    }

    //    HtmlTableCell htcObj = (HtmlTableCell)FindControl(frmObj.Controls, "tdcPagedetail");//HtmlTableCell htcObj = (HtmlTableCell)frmObj.FindControl("tdcPage");        
    //    htaMain.Border = 0;
    //    htaMain.CellPadding = 0;
    //    htaMain.CellSpacing = 0;
    //    htaMain.EnableViewState = false;
    //    htcObj.Controls.Add(htaMain);
        
    //    return dsePageInfo;
    //}

    //public bool LoadPageMember(DataTable dtaPage, HtmlForm frmObj, HtmlTable htaMain, DataRow[] droPageCtrl,
    //    DataTable dtaPageKeys, int intPageSeq, DataSet dsInput)
    //{
    //    bool blnStatus = true;
    //    int intRowCnt = 1;
    //    bool blnMultiplePage = Convert.ToBoolean(dtaPage.Rows[intPageSeq]["multiple_recs_page"].ToString());
    //    string strPageId = dtaPage.Rows[intPageSeq]["page_id"].ToString();
    //    frmMainObj = frmObj;
    //    if (blnMultiplePage)
    //    {
    //        if (frmObj.Page.IsPostBack)
    //        {
    //            if (frmObj.Page.Request.Form["_sys" + strPageId + "_RowCount"] != null)
    //                intRowCnt = Convert.ToInt32(frmObj.Page.Request.Form["_sys" + strPageId + "_RowCount"].ToString());
    //            else if (frmObj.Page.Request.Form["ctl00$_sys" + strPageId + "_RowCount"] != null)
    //                intRowCnt = Convert.ToInt32(frmObj.Page.Request.Form["ctl00$_sys" + strPageId + "_RowCount"].ToString());

                
    //                intRowCnt = Convert.ToInt32(HttpContext.Current.Session["hfrowcount"].ToString());

    //                //if (HttpContext.Current.Session["hfrowcountadd"] != null)
    //                //{
    //                //    if (HttpContext.Current.Session["hfrowcountadd"].ToString() != "")
    //                //    {
    //                //        intRowCnt = Convert.ToInt32(HttpContext.Current.Session["hfrowcountadd"].ToString());
    //                //    }
    //                //}
    //            HiddenField hfrowcount = (HiddenField)frmObj.FindControl("ctl00$ContentPlaceHolder3$hfrowcount");
    //            if (hfrowcount != null)
    //            {
    //                string value = hfrowcount.Value;

    //                if (value.ToLower() == "add")
    //                {
    //                    intRowCnt = intRowCnt + 1;
    //                }
    //                else if(value.ToLower() == "del")
    //                {
    //                    //intRowCnt = intRowCnt - 1;
    //                }

    //                HttpContext.Current.Session["hfrowcount"] = intRowCnt.ToString();

    //                hfrowcount.Value = "";
    //            }

    //        }
    //        else
    //        {
    //            if (dsInput != null)
    //            {
    //                if (dsInput.Tables.Count > 0)
    //                {
    //                    if (dsInput.Tables[0].Rows.Count > 0)
    //                    {
    //                        intRowCnt = dsInput.Tables[0].Rows.Count;

    //                        if (HttpContext.Current.Request.Url.ToString().ToLower().Contains("transdoc.aspx"))  // Added by srivatsan
    //                        {
    //                            HttpContext.Current.Session["hfrowcount"] = intRowCnt.ToString();
    //                            //HiddenField hfrowcount = (HiddenField)frmObj.FindControl("ctl00$ContentPlaceHolder3$hfrowcount");
    //                            //if (hfrowcount != null)
    //                            //{
    //                            //  hfrowcount.Value = intRowCnt.ToString();
    //                            //}
    //                        }


    //                    }
    //                    else
    //                    {
    //                        HttpContext.Current.Session["hfrowcount"] = intRowCnt.ToString();
    //                    }
    //                }
    //                else
    //                {
    //                    HttpContext.Current.Session["hfrowcount"] = intRowCnt.ToString();
    //                }
    //            }

    //        }
    //        rowcount = intRowCnt; // added by srivatsan
    //    }
    //    LoadPageMember(dtaPage, frmObj, htaMain, droPageCtrl, dtaPageKeys, intPageSeq, 0, intRowCnt,dsInput);
        

    //    return blnStatus;
    //}
    
    //private void addNoRightsMessage(HtmlTable htaMain, string sPageId)
    //{
    //    Label lblMessage1 = new Label();
    //    lblMessage1.Text = "You do not have sufficient access permission.";
    //    lblMessage1.ForeColor = System.Drawing.Color.Red;
    //    HtmlTableCell htCell = new HtmlTableCell();
    //    HtmlTableRow htRow = new HtmlTableRow();
    //    htCell.Controls.Add(lblMessage1);
    //    htRow.Cells.Add(htCell);
    //    htaMain.Rows.Add(htRow);
    //}

    //private bool checkRightsForObject(HtmlTable htaMain,security objSec, string sPageId, string sObjectId, string Right)
    //{
    //    bool bRights = true;
    //    if (!objSec.getObjectRightsForUser(sObjectId, Right))
    //    {
    //        if (htaMain.Rows.Count == 0) addNoRightsMessage(htaMain, sPageId);
    //        bRights = false;
    //    }
    //    return bRights;
    //}

    //private bool hasAccess(string Rights)
    //{
    //    bool bReturn = false;

    //    if (drObjectRights != null)
    //    {
    //        bReturn = Convert.ToBoolean(drObjectRights[Rights]);
    //    }
    //    else
    //        bReturn = false;

    //    return bReturn;
    //}
    //private string isRelationalField(string objId)
    //{
    //    //abandoned as another functionality exists.
    //    return "";
    //    DataTable dtObjatt = new DataTable();
    //    dtObjatt = this.HDD.GetDataTable("select af_row_id from sy_obj where object_id='" + objId + "'");
    //    dtObjatt = this.HDD.GetDataTable("select attrib_id from sy_obj_mas_detail where object_id='" + dtObjatt.Rows[0]["af_row_id"].ToString() + "'");
    //    string ret = "";
    //    foreach (DataRow dr in dtObjatt.Rows)
    //        ret = ret + "," + dr["attrib_id"].ToString() + ",";
    //    return ret;
    //}
    
    //public bool LoadPageMember(DataTable dtaPage, HtmlForm frmObj, HtmlTable htaMain, DataRow[] droPageCtrl,
    //    DataTable dtaPageKeys, int intPageSeq, int intStartFrom, int intRowCnt,DataSet dsInput)
    //{
    //    bool blnStatus = true;
    //    DataRow droTemp;
    //    HtmlTableCell htc;
    //    string strCtrlDesc = "";
    //    int intCurrentRow = 0;
    //    string strCtrlId = "";
    //    string strCtrlColumn = "";
    //    string strBindRowID = "";
    //    string strActualCtrlId = "";
    //    string strCtrlWidth = "";
    //    string sAttrib_Size = "";
    //    string sInputFormatMask = "";
    //    htc = new HtmlTableCell();
    //    DataRow droPage = dtaPage.Rows[intPageSeq];
    //    ArrayList arlHtmlCells = new ArrayList();
    //    string strMenuRowId = "";
    //    HDDatabase hdd = new HDDatabase();
    //    security objSec = new security();
    //    PageInfoLoad PIL = new PageInfoLoad();
    //    TransDocPCF TDPCF = new TransDocPCF();

    //    // Srivatsan May 15 2009 Control events 
    //    DataSet dscontrolevents = new DataSet();
    //    dscontrolevents = dsePageInfoMain;

    //    if (frmObj.Page.Request.QueryString["mn"].ToString() != null)
    //    {
    //        strMenuRowId = frmObj.Page.Request.QueryString["mn"].ToString();
    //    }
    //    if (intStartFrom == 0)
    //    {
    //        PageHeaderAdd(htaMain, droPage, strMenuRowId, objSec);
    //    }
    //    //PageTooltipAdd(htaMain, droPage);//implemented by sanal on July 28, 2008
    //    string strPageId = dtaPage.Rows[intPageSeq]["page_id"].ToString();

    //    bool blnMultiplePage = Convert.ToBoolean(dtaPage.Rows[intPageSeq]["multiple_recs_page"].ToString());
    //    bool blnFirstRowCaptionOnly = false;
    //    if (dtaPage.Rows[intPageSeq]["first_row_caption_only"] == DBNull.Value)
    //    {
    //        blnFirstRowCaptionOnly = GlobalValues.FirstRowCaptionOnly;
    //    }
    //    else
    //    {
    //        blnFirstRowCaptionOnly = Convert.ToBoolean(dtaPage.Rows[intPageSeq]["first_row_caption_only"].ToString());
    //    }
    //    //string strPageId = dtaPage.Rows[intPageSeq]["page_id"].ToString();
    //    HtmlTable htaPageTable = new HtmlTable();
    //    if (intStartFrom > 0)
    //    {
    //        htaPageTable = (HtmlTable)FindControl(frmObj.Controls, "tbl_" + strPageId);//htaPageTable = (HtmlTable)frmObj.FindControl("tbl_" + strPageId);
    //    }
    //    //htaPageTable.Attributes.Add("width", "100%");
    //    htaPageTable.ID = "tbl_" + strPageId;
    //    htaPageTable.CellPadding = 0;
    //    htaPageTable.CellSpacing = 0;
    //    htaPageTable.Border = 0;

    //    if (blnMultiplePage)
    //    {
    //        if (FindControl(frmObj.Controls, "_sys" + strPageId + "_RowCount") == null)
    //        {
    //            HtmlInputHidden hihObj = new HtmlInputHidden();
    //            hihObj.ID = "_sys" + strPageId + "_RowCount";
    //            frmObj.Controls.Add(hihObj);
    //        }
    //    }
    //    bool blnSeqControl = false;
    //    bool blnCaption = true;
    //    string strPageView = "";
    //    if (droPage["page_view"] == DBNull.Value)
    //    {
    //        strPageView = GlobalValues.DefaultPageView;
    //    }
    //    else
    //    {
    //        strPageView = droPage["page_view"].ToString();
    //    }

    //    if (checkRightsForObject(htaPageTable, objSec, strPageId, droPage["object_id"].ToString(), "read") == true) 
    //    {
    //        Hashtable hsControlValues = new Hashtable();
    //        //if (!frmObj.Page.IsPostBack)
    //        //{
    //            DataSet dsPageEvents = PIL.pageEventHandler(strPageId);

    //            if (dsPageEvents != null)
    //            {
    //                DataSet dsPageInfo = dtaPage.DataSet.Copy(); ;
    //                if (dsPageEvents.Tables.Count > 0)
    //                    PIL.triggerEvent(dsPageEvents, "PL", ref hsControlValues, ref dsPageInfo, frmObj);
    //                dsPageInfo.Dispose();
    //                dsPageInfo = null;
    //            }
    //        //}

    //        //////string sSql = "select attrib_id from sy_obj_att obj_att inner join sy_obj obj on obj.af_row_id=obj_att.object_id where obj.object_id='" + droPage["object_id"].ToString().Replace("'", "''") + "' and obj_att.is_key='true'";
    //        //////string sKeyAtt = hdd.GetColumnValue(sSql);
    //        DataTable dtObjatt = new DataTable();
    //        //string sSql = "select attrib_id from sy_obj_att obj_att inner join sy_obj obj on obj.af_row_id=obj_att.object_id where obj.object_id='" + droPage["object_id"].ToString().Replace("'", "''") + "' and obj_att.is_key='true'";
    //        string sSql = "select attrib_id,attrib_name,is_key,is_primary,object_tooltip from sy_obj_att obj_att inner join sy_obj obj on obj.af_row_id=obj_att.object_id where obj.object_id='" + droPage["object_id"].ToString().Replace("'", "''") + "'";
    //        //string sSql = "select attrib_id,is_key,is_primary from sy_obj_att obj_att object_id='" + droPage["object_id"].ToString().Replace("'", "''") + "'";
    //        dtObjatt = hdd.GetDataTable(sSql);
    //        string sKeyAtt = ""; string sPrimaryAtt = ""; string sRelationalField = ""; Hashtable Tooltips = new Hashtable();
    //        foreach (DataRow dr in dtObjatt.Rows)
    //            Tooltips.Add(dr["attrib_id"].ToString(), dr["object_tooltip"].ToString());
    //        try
    //        {
    //            DataRow[] drKeys = dtObjatt.Select("is_key='true'");
    //            if (drKeys.Length>0)
    //                sKeyAtt = drKeys[0]["attrib_id"].ToString();
    //            DataRow[] drPrKeys = dtObjatt.Select("is_primary='true'");
    //            for (int k = 0; k < drPrKeys.Length; k++)
    //                sPrimaryAtt +=  "," + drPrKeys[k]["attrib_id"].ToString() + ",";
    //            //sPrimaryAtt = dtObjatt.Select("is_primary='true'")[0]["attrib_id"].ToString();



    //            // Added by srivatsan for get required field values

    //            HiddenField hf = (HiddenField)FindControl(frmObj.Controls, "hfrequiredfield");
    //            if (hf != null)
    //            {
    //                string sPrimaryAtt1 = "";
    //                if (HttpContext.Current.Request.Url.ToString().ToLower().Contains("transdoc.aspx"))
    //                {
    //                    for (int k = 0; k < drPrKeys.Length; k++)
    //                    {
    //                        sPrimaryAtt1 += "," + drPrKeys[k]["attrib_id"].ToString() +":"+drPrKeys[k]["attrib_name"].ToString() +",";
    //                    }
    //                }
    //                hf.Value = sPrimaryAtt1;
    //            }
    //        }
    //        catch(Exception e){}                       
    //        dtObjatt = null;

    //        sRelationalField = isRelationalField(droPage["object_id"].ToString().Replace("'", "''"));

    //        bool bEdit = objSec.getObjectRightsForUser(droPage["object_id"].ToString(), "Edit") || objSec.getObjectRightsForUser(droPage["object_id"].ToString(), "Create");
    //        //string datetimscript = "";

    //        AddTransDocCaptions(htaPageTable, droPageCtrl,dtaPageKeys);//

    //        DataRow[] drTotals = getTotalFields(droPageCtrl[0]["page_id"].ToString());

    //        for (int j = intStartFrom; j < intRowCnt; j++)
    //        {
    //            arlHtmlCells = new ArrayList();
    //            intCurrentRow = j + 1;
    //            //if control caption repeat is false and control row is greater than 1 then no need to add the caption
    //            if (blnFirstRowCaptionOnly)
    //            {
    //                if (j > 0)
    //                {
    //                    blnCaption = false;
    //                }
    //            }
                
    //            for (int i = 0; i < droPageCtrl.Length; i++)
    //            {
    //                droTemp = droPageCtrl[i];
    //                /////strActualCtrlId = droTemp["control_id"].ToString(); //used for passing into control_init method
    //                /////strCtrlId = droTemp["control_id"].ToString();
    //                /////j
    //                strActualCtrlId = droTemp["control_attrib_id"].ToString();
    //                strCtrlId = droTemp["control_attrib_id"].ToString();

    //                strBindRowID = droTemp["control_bind_id"].ToString();
    //                strCtrlWidth = droTemp["control_width"].ToString();
    //                sAttrib_Size = droTemp["attrib_size"].ToString();
    //                if (droTemp.Table.Columns.Contains("input_mask_format"))
    //                    sInputFormatMask = droTemp["input_mask_format"].ToString();
    //                strCtrlId = strPageId + "_" + strCtrlId;
    //                string sIsKey = "false"; string sIsPrimary = "false"; string sIsRelationalField = "false";
    //                if (strActualCtrlId.ToLower() == sKeyAtt.ToLower())
    //                    sIsKey = "true";
    //                //if (strActualCtrlId.ToLower() == sPrimaryAtt.ToLower())
    //                if (sPrimaryAtt.ToLower().IndexOf("," + strActualCtrlId.ToLower() + ",")>-1)
    //                    sIsPrimary = "true";
    //                if (sRelationalField.ToLower().IndexOf("," + strActualCtrlId.ToLower() + ",") > -1)
    //                    sIsRelationalField = "true";
                    


    //                //DataSet ds = droTemp.Table.DataSet;

    //                if (droTemp.Table.Columns.Contains("read_only"))
    //                    if (droTemp["read_only"] != System.DBNull.Value)
    //                        bEdit = !Convert.ToBoolean(droTemp["read_only"].ToString());

    //                if (blnMultiplePage)
    //                    strCtrlId += "_" + intCurrentRow.ToString();

    //                if (droTemp["is_seq_control"] != System.DBNull.Value)
    //                    blnSeqControl = (Convert.ToBoolean(droTemp["is_seq_control"].ToString()));

    //                if (droTemp["control_html"].ToString() != "HI" && Convert.ToBoolean(droTemp["control_visible"].ToString() == "" ? "false" : droTemp["control_visible"].ToString()) != false)
    //                {
    //                    strCtrlDesc = droTemp["control_name"].ToString();
    //                    strCtrlColumn = droTemp["control_attrib_id"].ToString();
    //                    /*if (PCF.IsParentPageKeyControl(strCtrlColumn, dtaPage, dtaPageKeys, intPageSeq) == false)
    //                    {*/
    //                        string sObject_id = dtaPage.Rows[0]["object_id"].ToString();
    //                        string strCtrlHtml = droTemp["control_html"].ToString();
    //                        string strDefaultVal = droTemp["default_value"].ToString();

    //                        if (hsControlValues.Contains("[" + sObject_id + "].[" + strActualCtrlId + "]"))
    //                            strDefaultVal = Convert.ToString(hsControlValues["[" + sObject_id + "].[" + strActualCtrlId + "]"]);

    //                        //string sSql = "select is_key from sy_obj_att where object_id='" + droPage["object_id"].ToString().Replace("'", "''") + "' and attrib_id='" + droTemp["control_attrib_id"].ToString().Replace("'", "''") + "'";
    //                        //string sIsKey = hdd.GetColumnValue(sSql);

    //                        if (HttpContext.Current.Request.QueryString["VMODE"] != null)
    //                            if (HttpContext.Current.Request.QueryString["VMODE"] == "1")
    //                                bEdit = false;//strCtrlHtml = "";

    //                        string sToolTip = getValueFromKey(Tooltips,strCtrlColumn);
    //                        addSection(ref arlHtmlCells, strPageView, droTemp,droPage);//implemented by sanal on 22Aug2008 to add sections in the controls rendered
    //                        TDPCF.ControlInit(htc, intCurrentRow, strPageView, strCtrlId, strCtrlDesc, strBindRowID, strCtrlHtml, arlHtmlCells,
    //                            blnSeqControl, BC, strDefaultVal, blnCaption, strActualCtrlId, strCtrlWidth, sObject_id, sIsKey.ToLower(),sIsPrimary.ToLower(), blnMultiplePage, bEdit, sAttrib_Size,droTemp, dtaPageKeys,sIsRelationalField,sToolTip,sInputFormatMask,dsInput,drTotals,frmObj);
    //                        /*
    //                         * removed all the control case and moved to page common function
    //                         * for better followup
    //                        */
    //                    //}
    //                }
    //               if (droTemp["control_html"].ToString() == "HI" && Convert.ToBoolean(droTemp["control_visible"].ToString()) == true)
    //                {
    //                    HtmlInputHidden hihObj = new HtmlInputHidden();
    //                    hihObj.ID = strCtrlId;
    //                    frmObj.Controls.Add(hihObj);
    //                }
    //                //if (droTemp["control_attrib_id"].ToString() == "af_row_id")
    //                if (!Convert.ToBoolean(droTemp["control_visible"].ToString() == "" ? "false" : droTemp["control_visible"].ToString()))
    //                {
    //                    HiddenField hf = new HiddenField();
    //                    hf.ID = strCtrlId;
    //                    if (droTemp.Table.Columns.Contains("default_value"))
    //                        hf.Value = droTemp["default_value"].ToString();


    //                    if (hf.ID.Contains("af_row_id"))
    //                    {
    //                        ScreenReader SR = new ScreenReader();
    //                        if (dsInput != null)
    //                        {
    //                            if (dsInput.Tables.Count > 0)
    //                            {
    //                                if (dsInput.Tables[0].Rows.Count > 0)
    //                                {
    //                                    try
    //                                    {

    //                                        hf.Value = dsInput.Tables[0].Rows[j]["af_row_id"].ToString();

    //                                        if (dsInput.Tables[0].Rows[j]["af_row_id"].ToString() == "")
    //                                        {
    //                                            hf.Value = SR.getHashKey();
    //                                        }
    //                                    }
    //                                    catch { }
    //                                }
    //                               // else
    //                               // {
    //                                   // hf.Value = SR.getHashKey();
    //                                //}
    //                            }
    //                            //else
    //                           // {
    //                             //   hf.Value = SR.getHashKey();
    //                            //}
    //                        }
    //                       // else
    //                        //{
    //                          //  hf.Value = SR.getHashKey();
    //                        //}
    //                            SR=null;
    //                    }
    //                    if (frmMainObj!=null) frmMainObj.Controls.Add(hf);
    //                }
                    
    //            }                
    //            bool bDelete = objSec.getObjectRightsForUser(droPage["object_id"].ToString(), "Delete");
    //            GeneratePageTable(arlHtmlCells, htaPageTable, droPage, intCurrentRow, intRowCnt, intStartFrom, bDelete, drTotals, droPageCtrl, dscontrolevents); // modified for control evetns
    //        }

    //        //DataRow[] datarow

    //       // DataRow[] datarow = getTotalFields(droPageCtrl[0]["page_id"].ToString());
            
            
    //        AddTotalFields(htaPageTable, droPageCtrl,drTotals,dtaPage,intRowCnt,frmMainObj,htaPageTable);

    //        //updateaf_row_id();

    //    }        
    //    if (blnMultiplePage)
    //    {
    //        HtmlInputHidden hihObj = (HtmlInputHidden)FindControl(frmObj.Controls, "_sys" + strPageId + "_RowCount");
    //        hihObj.Value = intRowCnt.ToString();
    //    }

    //    if (intStartFrom == 0)
    //    {
    //        //intStartfrom value is 0, if it is called from dynamic page. If value is > 0 then no need to add
    //        //Adds the page table into the mail table
    //        HtmlTableCell htcMainCell = new HtmlTableCell();
    //        htcMainCell.Controls.Add(htaPageTable);
    //        HtmlTableRow htrMainObj = new HtmlTableRow();
    //        htrMainObj.Cells.Add(htcMainCell);
    //        htaMain.Rows.Add(htrMainObj);
    //    }

    //    return blnStatus;
    //}
    //private void addSection(ref ArrayList arlHtmlCells, string strPageView, DataRow droPageControl, DataRow droPage)//implemented by sanal on 22 Aug 2008
    //{
    //    //validations
    //    if (!droPageControl.Table.Columns.Contains("is_section")) return;
    //    if (droPageControl["is_section"].ToString().ToLower() == "false") return;
    //    if (droPageControl["is_section"].ToString().ToLower() == "0") return;
    //    if (droPageControl["is_section"].ToString().ToLower() == "") return;

    //    int intRowCtrlCnt = 0; int cellsInNewRow = 0;
    //    if (droPage["control_per_row"].ToString() == "")
    //        intRowCtrlCnt = GlobalValues.DefaultControlPerRow;
    //    else
    //        intRowCtrlCnt = Convert.ToInt32(droPage["control_per_row"].ToString());        
    //    int multiFactor = 1;
    //    if (strPageView == "2") multiFactor = 2;//cells gets doubled in this case
    //    cellsInNewRow = arlHtmlCells.Count % (intRowCtrlCnt * multiFactor);//find the cells in new row
    //    if (cellsInNewRow == 0) return;//if the cell is the first element, don't put a break
    //    cellsInNewRow = (intRowCtrlCnt * multiFactor) - cellsInNewRow;//calculates the no of blank cells to generate
    //    for (int i = 0; i < cellsInNewRow; i++)//create blank cells and add
    //    {
    //        HtmlTableCell ht = new HtmlTableCell();
    //        ht.Controls.Add(new LiteralControl("&nbsp;"));
    //        arlHtmlCells.Add(ht);
    //    }
    //}
    //private string getValueFromKey(Hashtable ht, string keyName)
    //{
    //    try
    //    {
    //        if (ht.ContainsKey(keyName))
    //            return ht[keyName].ToString();
    //        return "";
    //    }
    //    catch (Exception e)
    //    {
    //        return "";
    //    }
    //}
    //private bool isViewMode()
    //{
    //    if (HttpContext.Current.Request.QueryString["VMODE"] != null)
    //        if (HttpContext.Current.Request.QueryString["VMODE"] == "1")
    //            return false;
    //    return true;
    //}

    //public string getDateValues(string strFldValue, bool convertToUniversal)
    //{
    //    try
    //    {
    //        if (convertToUniversal)
    //            return DateTime.Parse(strFldValue, System.Globalization.CultureInfo.InvariantCulture).ToUniversalTime().ToString();
    //        if (HttpContext.Current.Request.QueryString["PK"] == null)
    //            return DateTime.Parse(strFldValue, System.Globalization.CultureInfo.InvariantCulture).ToUniversalTime().ToString();
    //        else
    //            return DateTime.Parse(strFldValue, System.Globalization.CultureInfo.InvariantCulture).ToString();
    //    }
    //    catch (Exception e)
    //    {
    //        return strFldValue;
    //    }
    //}

    //public string getUserSetting(string SourceTableName, string SourceFieldName, string LookupTableName, string LookupFieldName, string MappingFieldName)
    //{
    //    string sValue = "";
    //    try
    //    {
    //        sValue = HDD.GetColumnValue(SourceTableName, SourceFieldName, "user_id = '" + HttpContext.Current.Session["userid"].ToString().Replace("'","''") + "'");

    //        if (sValue != "")
    //        {
    //            sValue = HDD.GetColumnValue(LookupTableName, LookupFieldName, MappingFieldName + "='" + sValue + "'");
    //        }
    //    }

    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("Error : getUserSetting : " + ex.Message);
    //        sValue = "";
    //    }
    //    return sValue;
    //}
    //public ArrayList getUserSetting(string SourceTableName, string SourceFieldName, string LookupTableName, ArrayList LookupFieldNames, string MappingFieldName)
    //{
    //    ArrayList ret = new ArrayList();
    //    if (LookupFieldNames.Count < 1) return ret;
    //    string sValue = "";string temp = "";
    //    try
    //    {
    //        sValue = HDD.GetColumnValue(SourceTableName, SourceFieldName, "user_id = '" + HttpContext.Current.Session["userid"].ToString().Replace("'", "''") + "'");

    //        if (sValue != "")
    //        {
    //            for (int i = 0; i < LookupFieldNames.Count; i++)
    //                temp = temp + LookupFieldNames[i].ToString() + ",";
    //            temp = temp.TrimEnd(',');
    //            DataTable dt = HDD.GetDataTable("select " + temp + " from " + LookupTableName + " where " + MappingFieldName + "='" + sValue + "'");
    //            if (dt != null)
    //            {
    //                foreach (DataColumn dc in dt.Columns)
    //                    ret.Add(dt.Rows[0][dc.ColumnName].ToString());
    //            }
    //        }
    //    }

    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("Error : getUserSetting : " + ex.Message);
    //    }
    //    return ret;
    //}
    //public string manageCurrency(string originalValue,ArrayList currencyCode)
    //{
    //    if (currencyCode.Count < 1) return originalValue;
    //    if (currencyCode.Count < 2)
    //    {
    //        LogWriter.WriteLog("No Corporate currency defined.");
    //        return originalValue;
    //    }
    //    string ret = originalValue; Double inputValue = 0;
    //    double conversionRate = 0; double temp = 0;double corporate=0;
    //    corporate = double.Parse(currencyCode[2].ToString());
    //    try
    //    {
    //        inputValue = originalValue=="" ? 0 : double.Parse(originalValue);
    //        conversionRate = currencyCode[0].ToString()=="" ? 1 : double.Parse(currencyCode[0].ToString());
    //        temp = (inputValue * corporate) / conversionRate;
    //        ret = currencyCode[1] + " " + getValueInUserCurrency(temp); ;//temp.ToString("#0.00");
    //    }
    //    catch (Exception e)
    //    {
    //        LogWriter.WriteLog("manageCurrency : Error : " + e.Message);
    //    }
    //    return ret;
    //}
    //private string getValueInUserCurrency(double e)
    //{
    //    string ret = "";
    //    Localization ll = new Localization();
    //    ret = ll.getUserCurrency(e);
    //    ll = null;
    //    return ret;
    //}
    //public double getCorporateCurrency()
    //{
    //    try
    //    {
    //        DataSet ds = new DataSet();
    //        //ds = HDD.GetDataset("select c_rate from sy_currency where c_iscorporate='True'");
    //        ds = HDD.GetDataset("select c_rate from sy_currency where c_iscorporate=1");
    //        if (ds != null)
    //            return double.Parse(ds.Tables[0].Rows[0][0].ToString());
    //        else
    //            return 1.0;
    //    }
    //    catch (Exception e)
    //    {
    //        LogWriter.WriteLog("manageCurrency : Error : " + e.Message);
    //    }
    //    return 1.0;
    //}
    //private string getDTFormat4user()//implemented by sanal on Sept 02, 2008
    //{
    //    //string ret="";
    //    //    CultureInfo ci = new CultureInfo("fr-FR");
    //    //    ret = ci.DateTimeFormat.ShortDatePattern();
    //    //    ci = null;
    //    //    return ret;
    //    Localization ll = new Localization();
    //    string ret = ll.getDateFormat() + " hh:mm tt";
    //    ll = null;
    //    return ret;
    //    //return "dd-MMM-yyyy hh:mm tt";
    //}
    //public string getUsersDT(string Value, string sUTC_Offset)
    //{
    //    string ret = "";
    //    Localization ll = new Localization();
    //    ret = ll.getDateTime4TimeZone(Value, sUTC_Offset, false,false);
    //    ll = null;
    //    return ret;
    //    //string sValue = "";
    //    //string sDateTimeFormatString = getDTFormat4user();// "dd-MMM-yyyy hh:mm tt";
    //    ////DateTime dt1 = DateTime.Parse(Value, System.Globalization.CultureInfo.InvariantCulture);
    //    ////return dt1.ToLocalTime().ToString(sDateTimeFormatString);
    //    //try
    //    //{
    //    //    string sHours = "";
    //    //    string sMinutes = "";
    //    //    if (Value == "") return Value;
    //    //    if (sUTC_Offset != "")
    //    //    {
    //    //        if (sUTC_Offset.IndexOf('.') != -1)
    //    //        {
    //    //            sHours = sUTC_Offset.Substring(1, sUTC_Offset.IndexOf('.') - 1);
    //    //            sMinutes = sUTC_Offset.Substring(sUTC_Offset.IndexOf('.') + 1, sUTC_Offset.Length - sUTC_Offset.IndexOf('.') - 1);
    //    //        }
    //    //        else
    //    //            sHours = sUTC_Offset.Substring(1, sUTC_Offset.Length - 1);

    //    //        if (sUTC_Offset.StartsWith("-"))
    //    //        {
    //    //            sHours = "-" + sHours;
    //    //            if (sMinutes != "")
    //    //                sMinutes = "-" + sMinutes;
    //    //        }
    //    //    }
    //    //    if (sHours == "") sHours = "0";

    //    //    DateTime dt = DateTime.Parse(Value, System.Globalization.CultureInfo.InvariantCulture); //DateTime.Parse(Value);//sanal on Sept 04, 2008
    //    //    dt = dt.AddHours(Convert.ToDouble(sHours));
    //    //    if (sMinutes != "")
    //    //        dt = dt.AddMinutes(Convert.ToDouble(sMinutes));
    //    //    sValue = dt.ToLocalTime().ToString(sDateTimeFormatString); //dt.ToString(sDateTimeFormatString);//sanal on Sept 04, 2008
    //    //}

    //    //catch (Exception ex)
    //    //{
    //    //    LogWriter.WriteLog("getUsersDT : Error : " + ex.Message);
    //    //    sValue = Value;
    //    //}
    //    //return sValue;
    //}

    //public string getGMT(string Value, string sUTC_Offset)
    //{
    //    string sValue = "";
    //    string sDateTimeFormatString = "dd-MMM-yyyy hh:mm tt";
    //    try
    //    {
    //        string sHours = "";
    //        string sMinutes = "";
    //        if (Value == "") return Value;
    //        if (sUTC_Offset != "")
    //        {
    //            if (sUTC_Offset.IndexOf('.') != -1)
    //            {
    //                sHours = sUTC_Offset.Substring(1, sUTC_Offset.IndexOf('.') - 1);
    //                sMinutes = sUTC_Offset.Substring(sUTC_Offset.IndexOf('.') + 1, sUTC_Offset.Length - sUTC_Offset.IndexOf('.') - 1);
    //            }
    //            else
    //                sHours = sUTC_Offset.Substring(1, sUTC_Offset.Length - 1);

    //            if (sUTC_Offset.StartsWith("-"))
    //            {
    //                sHours = "-" + sHours;
    //                if (sMinutes != "")
    //                    sMinutes = "-" + sMinutes;
    //            }
    //        }
    //        if (sHours == "") sHours = "0";

    //        DateTime dt = DateTime.Parse(Value);
    //        dt = dt.AddHours(Convert.ToDouble("-" + sHours));
    //        if (sMinutes != "")
    //            dt = dt.AddMinutes(Convert.ToDouble("-" + sMinutes));
    //        sValue = dt.ToString();
    //    }

    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("getUsersDT : Error : " + ex.Message);
    //        sValue = Value;
    //    }
    //    return sValue;
    //}

    //public string getUsersDateTime(string Value)
    //{
    //    string sValue = "";
    //    try
    //    {
    //        string sUTC_Offset = getUserSetting("sy_usr", "time_zone", "sy_timezone", "utc_offset", "timezone_id");

    //        sValue = getUsersDT(Value, sUTC_Offset);
    //    }
    //        catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("getUsersDT : Error : " + ex.Message);
    //        sValue = Value;
    //    }
    //    return sValue;
    //}
    #region old code commented by srivatsan
    //private bool GeneratePageTable(ArrayList arlHtmlCells, HtmlTable htaPageTable, DataRow droPage, int intCurrentRow, int intTotalRow, int intStartFrom, bool Delete)
    //{
    //    bool blnStatus = true;
    //    bool blnMultiplePage = Convert.ToBoolean(droPage["multiple_recs_page"].ToString());
    //    string strPageId = droPage["page_id"].ToString();
    //    string strPageView = "";
    //    if (droPage["page_view"] == DBNull.Value)
    //    {
    //        strPageView = GlobalValues.DefaultPageView;
    //    }
    //    else
    //    {
    //        strPageView = droPage["page_view"].ToString();
    //    }
    //    int intRowCtrlCnt = 0;
    //    if (droPage["control_per_row"] == DBNull.Value)
    //    {
    //        intRowCtrlCnt = GlobalValues.DefaultControlPerRow;
    //    }
    //    else
    //    {
    //        intRowCtrlCnt = Convert.ToInt32(droPage["control_per_row"].ToString());
    //    }

    //    if (strPageView == "2")
    //    {
    //        intRowCtrlCnt = intRowCtrlCnt * 2;
    //    }

    //    if (intStartFrom > 0 && intCurrentRow == 2 && isViewMode() && Delete)
    //    {
    //        //Button btnRemoveObj = new Button();  // srivatsan
    //        ImageButton btnRemoveObj = new ImageButton();
    //        btnRemoveObj.ID = "btn_" + strPageId + "_Remove_1";
    //        //btnRemoveObj.Text = "Remove";  //srivatsan
    //        btnRemoveObj.ImageUrl = "Images/delete.GIF";
    //        btnRemoveObj.ToolTip = "Delete";
    //        //btnRemoveObj.Click += new EventHandler(btnRemoveObj_Click); // srivatsan
    //        btnRemoveObj.Click += new ImageClickEventHandler(btnRemoveObj_Click);
    //        btnRemoveObj.OnClientClick = "return RemoveRow('" + strPageId + "','1')";//btnRemoveObj.OnClientClick = "return RemoveRow('" + strPageId + "','1" + intCurrentRow.ToString() + "')";
    //        //if (strPageView == "1")
    //        //{
    //        htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[intRowCtrlCnt + 1].Controls.Clear();
    //        htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[intRowCtrlCnt + 1].Controls.Add(btnRemoveObj);
    //        /*}
    //        if (strPageView == "2")
    //        {
    //            htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[(intRowCtrlCnt*2) + 1].Controls.Clear();
    //            htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[(intRowCtrlCnt * 2) + 1].Controls.Add(btnRemoveObj);
    //        }*/
    //    }
    //    for (int i = 0; i < arlHtmlCells.Count; i = i + intRowCtrlCnt)
    //    {
    //        HtmlTableRow htrObj = new HtmlTableRow();
    //        HtmlTableCell htc = new HtmlTableCell();
    //        if (blnMultiplePage && i == 0)
    //        {
    //            htc.Controls.Add(new LiteralControl(intCurrentRow.ToString()));
    //        }
    //        else
    //        {
    //            htc.Controls.Add(new LiteralControl(" "));
    //        }
    //        htrObj.Cells.Add(htc);

    //        for (int j = i; j < i + intRowCtrlCnt; j++)
    //        {
    //            htc = new HtmlTableCell();
    //            if (j < arlHtmlCells.Count)
    //            {
    //                htc = (HtmlTableCell)arlHtmlCells[j];
    //            }
    //            else
    //            {
    //                htc.Controls.Add(new LiteralControl(" "));
    //            }

    //            htrObj.Cells.Add(htc);
    //        }

    //        #region MyRegion
    //        //htc = (HtmlTableCell)arlHtmlCells[i];
    //        //htrObj.Cells.Add(htc);

    //        //htc = new HtmlTableCell();
    //        //if ((i + 1) < arlHtmlCells.Count)
    //        //{
    //        //    htc = (HtmlTableCell)arlHtmlCells[i + 1];
    //        //}
    //        //else
    //        //{
    //        //    htc.Controls.Add(new LiteralControl(" "));
    //        //}
    //        //htrObj.Cells.Add(htc); 
    //        #endregion

    //        // Add, Remove Button will be added
    //        htc = new HtmlTableCell();
    //        if ((i + intRowCtrlCnt) >= arlHtmlCells.Count && blnMultiplePage)
    //        {
    //            #region MyRegion
    //            /*if (intCurrentRow == intTotalRow)
    //            {
    //                Button btnAddObj = new Button();
    //                btnAddObj.ID = "btn_" + strPageId + "_Add_1";
    //                btnAddObj.Text = "Add";
    //                btnAddObj.Click += new EventHandler(btnAddObj_Click);
    //                btnAddObj.OnClientClick = "return AddRow('" + strPageId + "')";
    //                htc.Controls.Add(btnAddObj);
    //            }
    //            else
    //            {*/

    //            #endregion
    //            // Remove button does not needed for first row
    //            if (intTotalRow > 1 && isViewMode() && Delete)
    //            {
    //                //Button btnRemoveObj = new Button(); // srivatsan
    //                ImageButton btnRemoveObj = new ImageButton();
    //                btnRemoveObj.ID = "btn_" + strPageId + "_Remove_" + intCurrentRow.ToString();
    //                // btnRemoveObj.Text = "Remove";
    //                btnRemoveObj.AlternateText = "Remove";
    //                btnRemoveObj.ToolTip = "Remove";
    //                btnRemoveObj.ImageUrl = "Images/delete.GIF";
    //                //btnRemoveObj.Click += new EventHandler(btnRemoveObj_Click); // srivatsan
    //                btnRemoveObj.Click += new ImageClickEventHandler(btnRemoveObj_Click);
    //                btnRemoveObj.OnClientClick = "RemoveRow('" + strPageId + "','" + intCurrentRow.ToString() + "');";
    //                htc.Controls.Add(btnRemoveObj);
    //            }
    //            else
    //            {
    //                htc.Controls.Add(new LiteralControl("&nbsp;"));
    //            }
    //            //}
    //        }
    //        else
    //        {
    //            htc.Controls.Add(new LiteralControl("&nbsp;"));
    //        }

    //        htrObj.Cells.Add(htc);
    //        htrObj.VAlign = "middle";
    //        //htrObj.Attributes.Add("class", "Dynamic_HtmlTableCell");
    //        htrObj.Attributes.Add("class", "Dynamic_TransDocHtmlTableCell"); // Modified by srivatsan on May 10 2009

    //        // htrObj.ID = "htr_" + i;

    //        htaPageTable.Rows.Add(htrObj);
    //    }
    //    return blnStatus;
    //}
#endregion

    //private bool GeneratePageTable(ArrayList arlHtmlCells, HtmlTable htaPageTable, DataRow droPage, int intCurrentRow, int intTotalRow, int intStartFrom, bool Delete, DataRow[] drtotals, DataRow[] droPageCtrl, DataSet dsControlEvents)
    //{
    //    bool blnStatus = true;
    //    bool blnMultiplePage = Convert.ToBoolean(droPage["multiple_recs_page"].ToString());
    //    string strPageId = droPage["page_id"].ToString();
    //    string strPageView = "";


    //    // srivatsan control events
    //    DataRow[] drcontrolevents = null;
    //    if (dsControlEvents != null)
    //    {
    //        if (dsControlEvents.Tables.Count > 0)
    //        {
    //            if (dsControlEvents.Tables["ControlEvents"].Rows.Count > 0)
    //            {
    //                drcontrolevents = dsControlEvents.Tables["ControlEvents"].Select();
    //            }
    //        }
    //    }//

    //    if (droPage["page_view"] == DBNull.Value)
    //    {
    //        strPageView = GlobalValues.DefaultPageView;
    //    }
    //    else
    //    {
    //        strPageView = droPage["page_view"].ToString();
    //    }
    //    int intRowCtrlCnt = 0;
    //    if (droPage["control_per_row"] == DBNull.Value)
    //    {
    //        intRowCtrlCnt = GlobalValues.DefaultControlPerRow;
    //    }
    //    else
    //    {
    //        intRowCtrlCnt = Convert.ToInt32(droPage["control_per_row"].ToString());
    //    }

    //    if (strPageView == "2")
    //    {
    //        intRowCtrlCnt = intRowCtrlCnt * 2;
    //    }

    //    if (intStartFrom > 0 && intCurrentRow == 2 && isViewMode() && Delete)
    //    {
    //        //Button btnRemoveObj = new Button();  // srivatsan
    //        ImageButton btnRemoveObj = new ImageButton();
    //        btnRemoveObj.ID = "btn_" + strPageId + "_Remove_1";
    //        //btnRemoveObj.Text = "Remove";  //srivatsan
    //        btnRemoveObj.ImageUrl = "Images/delete.GIF";
    //        btnRemoveObj.ToolTip = "Delete";
    //        //btnRemoveObj.Click += new EventHandler(btnRemoveObj_Click); // srivatsan
    //        btnRemoveObj.Click += new ImageClickEventHandler(btnRemoveObj_Click);
    //        btnRemoveObj.OnClientClick = "updateclickstatus('del'); return RemoveRow('" + strPageId + "','1')";//btnRemoveObj.OnClientClick = "return RemoveRow('" + strPageId + "','1" + intCurrentRow.ToString() + "')";
    //        //if (strPageView == "1")
    //        //{
    //        htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[intRowCtrlCnt + 1].Controls.Clear();
    //        htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[intRowCtrlCnt + 1].Controls.Add(btnRemoveObj);
    //        /*}
    //        if (strPageView == "2")
    //        {
    //            htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[(intRowCtrlCnt*2) + 1].Controls.Clear();
    //            htaPageTable.Rows[htaPageTable.Rows.Count - 1].Cells[(intRowCtrlCnt * 2) + 1].Controls.Add(btnRemoveObj);
    //        }*/
    //    }
    //    for (int i = 0; i < arlHtmlCells.Count; i = i + intRowCtrlCnt)
    //    {
    //        HtmlTableRow htrObj = new HtmlTableRow();
    //        HtmlTableCell htc = new HtmlTableCell();
    //       // htc.Width = "100%";
    //        if (blnMultiplePage && i == 0)
    //        {
    //            htc.Controls.Add(new LiteralControl(intCurrentRow.ToString()));
    //           // htc.Width = "100%";
    //        }
    //        else
    //        {
    //            htc.Controls.Add(new LiteralControl(" "));
    //        }
    //        htrObj.Cells.Add(htc); 
            
    //        for (int j = i; j < i + intRowCtrlCnt; j++)
    //        {
    //            htc = new HtmlTableCell();
    //            if (j < arlHtmlCells.Count)
    //            {
    //                htc = (HtmlTableCell)arlHtmlCells[j];
    //                // Added by srivatsan on May 12 for events
    //                if (htc.Controls.Count > 0)
    //                {
    //                    foreach (Control cn in htc.Controls)
    //                    {
    //                        if (drtotals.Length > 0)
    //                        {
    //                            for (int k = 0; k < drtotals.Length; k++)
    //                            {
    //                                if (cn != null)
    //                                {
    //                                    if (cn.ID != null)
    //                                    {
    //                                        if (drtotals[k]["attrib_id"].ToString() != "")
    //                                        {
    //                                            if (cn.ID.ToLower().Contains(drtotals[k]["attrib_id"].ToString().ToLower()))
    //                                            {
    //                                                if (cn is TextBox)
    //                                                {
    //                                                    TextBox textbox1 = (TextBox)cn;
    //                                                    //textbox1.CausesValidation = false;
    //                                                    //textbox1.Attributes.Add("onChange", "javascript:seteventsender('"+textbox1.ID+"');");
    //                                                    //textbox1.AutoPostBack = true;
    //                                                    //textbox1.TextChanged += new EventHandler(textbox1_TextChanged);
    //                                                    //textbox1.Attributes.Add("onchange", "javascript:transdoc_calculateTotal('" + textbox1.ID.Replace("_" + drcontrolevents[k]["source_control"].ToString(), "") + "','" + drcontrolevents[k]["source_control"].ToString() + "','','" + drcontrolevents[k]["target_control"].ToString() + "');");
    //                                                    textbox1.Attributes.Add("onchange", "javascript:transdoc_calculateTotal('" + strPageId + "','" + drtotals[k]["attrib_id"].ToString() + "','','" + "total_" + strPageId +"_"+ drtotals[k]["attrib_id"].ToString() + "');");
    //                                                }
    //                                                if (cn is DropDownList)
    //                                                {
    //                                                    DropDownList dropdown1 = (DropDownList)cn;
    //                                                    dropdown1.CausesValidation = false;
    //                                                    dropdown1.Attributes.Add("onChange","javascript:seteventsender('"+dropdown1.ID+"');");
    //                                                    dropdown1.AutoPostBack = true;
    //                                                    dropdown1.SelectedIndexChanged += new EventHandler(dropdown1_SelectedIndexChanged);
    //                                                }
    //                                            }
    //                                        }
    //                                    }
    //                                }
    //                            }
    //                        }
    //                    }
    //                }
                   
                   

    //                    SetEventsforControl(ref htc, drcontrolevents);  // Added by srivatsan for control events
                   
    //            }
    //            else
    //            {
    //                htc.Controls.Add(new LiteralControl(" "));
    //            }
                
    //            htrObj.Cells.Add(htc);
    //        }

    //        #region MyRegion
    //        //htc = (HtmlTableCell)arlHtmlCells[i];
    //        //htrObj.Cells.Add(htc);

    //        //htc = new HtmlTableCell();
    //        //if ((i + 1) < arlHtmlCells.Count)
    //        //{
    //        //    htc = (HtmlTableCell)arlHtmlCells[i + 1];
    //        //}
    //        //else
    //        //{
    //        //    htc.Controls.Add(new LiteralControl(" "));
    //        //}
    //        //htrObj.Cells.Add(htc); 
    //        #endregion

    //        // Add, Remove Button will be added
    //        htc = new HtmlTableCell();
    //        if ((i + intRowCtrlCnt) >= arlHtmlCells.Count && blnMultiplePage)
    //        {
    //            #region MyRegion
    //            /*if (intCurrentRow == intTotalRow)
    //            {
    //                Button btnAddObj = new Button();
    //                btnAddObj.ID = "btn_" + strPageId + "_Add_1";
    //                btnAddObj.Text = "Add";
    //                btnAddObj.Click += new EventHandler(btnAddObj_Click);
    //                btnAddObj.OnClientClick = "return AddRow('" + strPageId + "')";
    //                htc.Controls.Add(btnAddObj);
    //            }
    //            else
    //            {*/
                
    //            #endregion
    //            // Remove button does not needed for first row
    //            if (intTotalRow > 1 && isViewMode() && Delete)
    //            {
    //                //Button btnRemoveObj = new Button(); // srivatsan
    //                ImageButton btnRemoveObj = new ImageButton();
    //                btnRemoveObj.ID = "btn_" + strPageId + "_Remove_" + intCurrentRow.ToString();
    //               // btnRemoveObj.Text = "Remove";
    //                btnRemoveObj.AlternateText = "Remove";
    //                btnRemoveObj.ToolTip = "Remove";
    //                btnRemoveObj.ImageUrl = "Images/delete.GIF";
    //                //btnRemoveObj.Click += new EventHandler(btnRemoveObj_Click); // srivatsan
    //                btnRemoveObj.Click += new ImageClickEventHandler(btnRemoveObj_Click);
    //                btnRemoveObj.OnClientClick = "updateclickstatus('del');  RemoveRow('" + strPageId + "','" + intCurrentRow.ToString() + "');";
    //                htc.Controls.Add(btnRemoveObj);
    //            }
    //            else
    //            {
    //                htc.Controls.Add(new LiteralControl("&nbsp;"));
    //            }
    //            //}
    //        }
    //        else
    //        {
    //            htc.Controls.Add(new LiteralControl("&nbsp;"));
    //        }
            
    //        htrObj.Cells.Add(htc);
    //        htrObj.VAlign="middle";
    //        //htrObj.Attributes.Add("class", "Dynamic_HtmlTableCell");
    //        htrObj.Attributes.Add("class", "Dynamic_TransDocHtmlTableCell"); // Modified by srivatsan on May 10 2009

    //       // htrObj.ID = "htr_" + i;

    //        htaPageTable.Rows.Add(htrObj);
    //    }
    //    return blnStatus;
    //}

    //void dropdown1_SelectedIndexChanged(object sender, EventArgs e)
    //{
        
    //     DropDownList dropdown1 = (DropDownList)sender;
    //    Control cnt = FindControl(frmMainObj.Controls, "hfeventsender");
    //    if (cnt != null)
    //    {
    //        HiddenField hf = (HiddenField)cnt;

    //        if (hf != null)
    //        {
    //            if (hf.Value.ToLower() == dropdown1.ID.ToLower())
    //            {

    //                try
    //                {
    //                    DropDownList dropdownlist1 = (DropDownList)sender;
    //                    string id = dropdownlist1.ID;
    //                    string text = dropdownlist1.SelectedValue;
    //                    string totalfieldid = "";


    //                    int lastindex = id.LastIndexOf("_");

    //                    string control = id.Substring(0, id.LastIndexOf("_"));


    //                    totalfieldid = "total_" + control;


    //                    //string[] control = id.Split('_');

    //                    //for (int i = 0; i < control.Length - 1; i++)
    //                    //{
    //                    //    if (i > 0)
    //                    //    {
    //                    //        totalfieldid = totalfieldid + "_" + control[i].ToString();
    //                    //    }
    //                    //    else
    //                    //    {
    //                    //        totalfieldid = "total_" + totalfieldid + control[i].ToString();
    //                    //    }
    //                    //}


    //                    Control mycontrol = FindControl(frmMainObj.Controls, totalfieldid);

    //                    Double result = 0;
    //                    if (rowcount != 0)
    //                    {
    //                        for (int i = 1; i <= rowcount; i++)
    //                        {
    //                            string controlid = control + "_" + i;
    //                            Control totalcontrol = FindControl(frmMainObj.Controls, controlid);
    //                            if (totalcontrol != null)
    //                            {
    //                                DropDownList txt = (DropDownList)totalcontrol;
    //                                if (txt.SelectedIndex > -1)
    //                                {
    //                                    result = result + Convert2Double(txt.SelectedValue);
    //                                }
    //                            }
    //                        }
    //                    }



    //                    if (mycontrol != null)
    //                    {
    //                        Label mylabel = (Label)mycontrol;
    //                        mylabel.CssClass = "Controllabelfont";
    //                        mylabel.Text = result.ToString("#,##0.00");
    //                    }

    //                    updateTotalAmountOnEvents();  // Show the total amount
    //                }
    //                catch (Exception ex)
    //                {
    //                    LogWriter.WriteLog("Error Transaction Document Totals Dropdownlist : " + ex.Message);
    //                }
    //            }
    //        }
    //    }
    //}

    //void textbox1_TextChanged(object sender, EventArgs e)
    //{

    //     TextBox textbox = (TextBox)sender;
    //    Control cnt = FindControl(frmMainObj.Controls, "hfeventsender");
    //    if (cnt != null)
    //    {
    //        HiddenField hf = (HiddenField)cnt;

    //        if (hf != null)
    //        {
    //            if (hf.Value.ToLower() == textbox.ID.ToLower())
    //            {

    //                try
    //                {
    //                    TextBox textbox1 = (TextBox)sender;
    //                    string id = textbox1.ID;
    //                    string text = textbox1.Text;
    //                    string totalfieldid = "";


    //                    int lastindex = id.LastIndexOf("_");

    //                    string control = id.Substring(0, id.LastIndexOf("_"));
    //                    //string[] control = id.Split('_');

    //                    totalfieldid = "total_" + control;

    //                    //for (int i = 0; i < control.Length - 1; i++)
    //                    //{
    //                    //    if (i > 0)
    //                    //    {
    //                    //        totalfieldid = totalfieldid + "_" + control[i].ToString();
    //                    //    }
    //                    //    else
    //                    //    {
    //                    //        totalfieldid = "total_"+totalfieldid + control[i].ToString();
    //                    //    }
    //                    //}


    //                    Control mycontrol = FindControl(frmMainObj.Controls, totalfieldid);

    //                    Double result = 0;
    //                    if (rowcount != 0)
    //                    {
    //                        for (int i = 1; i <= rowcount; i++)
    //                        {
    //                            string controlid = control + "_" + i;
    //                            Control totalcontrol = FindControl(frmMainObj.Controls, controlid);
    //                            if (totalcontrol != null)
    //                            {
    //                                TextBox txt = (TextBox)totalcontrol;
    //                                result = result + Convert2Double(txt.Text);
    //                            }
    //                        }
    //                    }

    //                    if (mycontrol != null)
    //                    {
    //                        Label mylabel = (Label)mycontrol;
    //                        mylabel.CssClass = "Controllabelfont";
    //                        mylabel.Text = result.ToString("#,##0.00");
    //                    }

    //                    updateTotalAmountOnEvents();  // Show the total amount

    //                }
    //                catch (Exception ex)
    //                {
    //                    LogWriter.WriteLog("Error Transaction Document Totals : " + ex.Message);
    //                }
    //            }
    //        }
    //    }

    //}

    //private void SetEventsforControl(ref HtmlTableCell htc, DataRow[] drcontrolevents)
    //{
    //    if (htc.Controls.Count > 0)
    //    {
    //        foreach (Control cn in htc.Controls)
    //        {
    //            if (drcontrolevents != null)
    //            {
    //                if (drcontrolevents.Length > 0)
    //                {
    //                    for (int k = 0; k < drcontrolevents.Length; k++)
    //                    {
    //                        if (cn != null)
    //                        {
    //                            if (cn.ID != null)
    //                            {
    //                                if (cn.ID.ToLower().Contains(drcontrolevents[k]["source_control"].ToString().ToLower()))
    //                                {
    //                                    if (cn is TextBox)
    //                                    {
    //                                        TextBox textbox1 = (TextBox)cn;
    //                                        //textbox1.CausesValidation = false;
    //                                        //textbox1.Attributes.Add("onChange", "javascript:seteventsender('" + textbox1.ID + "');");
    //                                        //textbox1.AutoPostBack = true;
    //                                        //textbox1.TextChanged += new EventHandler(textbox2_TextChanged);
    //                                        //textbox1.Attributes.Add("onblur", "javascript:contrlevnt_handleEvent('" + textbox1.ID.Replace("_" + drcontrolevents[k]["source_control"].ToString(), "") + "','" + drcontrolevents[k]["target_control"].ToString() + "','" + drcontrolevents[k]["expression"].ToString().Trim() + "','" + drcontrolevents[k]["event_type"].ToString() + "');");                                            
    //                                        textbox1.Attributes.Add("onblur", "javascript:contrlevnt_handleEvent('" + textbox1.ID.Substring(0, textbox1.ID.Length - 1 - textbox1.ID.IndexOf("_" + drcontrolevents[k]["source_control"].ToString())) + "','" + drcontrolevents[k]["target_control"].ToString() + "','" + drcontrolevents[k]["expression"].ToString().Trim() + "','" + drcontrolevents[k]["event_type"].ToString() + "','" + textbox1.ID.Substring(textbox1.ID.IndexOf("_" + drcontrolevents[k]["source_control"].ToString()) + Convert.ToString("_" + drcontrolevents[k]["source_control"].ToString()).Length+1) + "');");
    //                                    }
    //                                    if (cn is DropDownList)
    //                                    {
    //                                        DropDownList dropdown1 = (DropDownList)cn;
    //                                        //dropdown1.CausesValidation = false;
    //                                        //dropdown1.Attributes.Add("onChange", "javascript:seteventsender('" + dropdown1.ID + "');");
    //                                        //dropdown1.AutoPostBack = true;
    //                                        //dropdown1.SelectedIndexChanged += new EventHandler(dropdown2_SelectedIndexChanged);
    //                                        dropdown1.Attributes.Add("onchange", "javascript:contrlevnt_handleEvent('" + dropdown1.ID.Substring(0, dropdown1.ID.Length - 1 - dropdown1.ID.IndexOf("_" + drcontrolevents[k]["source_control"].ToString())) + "','" + drcontrolevents[k]["target_control"].ToString() + "','" + drcontrolevents[k]["expression"].ToString().Trim() + "','" + drcontrolevents[k]["event_type"].ToString() + "','" + dropdown1.ID.Substring(dropdown1.ID.IndexOf("_" + drcontrolevents[k]["source_control"].ToString()) + Convert.ToString("_" + drcontrolevents[k]["source_control"].ToString()).Length + 1) + "');");
    //                                    }
    //                                    if (cn is CheckBox)
    //                                    {
    //                                        CheckBox cb1 = (CheckBox)cn;
    //                                        //cb1.CausesValidation = false;
    //                                        //cb1.Attributes.Add("onClick", "javascript:seteventsender('" + cb1.ID + "');");
    //                                        //cb1.AutoPostBack = true;
    //                                        //cb1.CheckedChanged += new EventHandler(cb2_CheckedChanged);
    //                                        //cb1.Attributes.Add("onclick", "javascript:contrlevnt_handleEvent('" + cb1.ID.Replace("_" + drcontrolevents[k]["source_control"].ToString(), "") + "','" + drcontrolevents[k]["target_control"].ToString() + "','" + drcontrolevents[k]["expression"].ToString().Trim() + "','" + drcontrolevents[k]["event_type"].ToString() + "');");
    //                                        cb1.Attributes.Add("onclick", "javascript:contrlevnt_handleEvent('" + cb1.ID.Substring(0, cb1.ID.Length - 1 - cb1.ID.IndexOf("_" + drcontrolevents[k]["source_control"].ToString())) + "','" + drcontrolevents[k]["target_control"].ToString() + "','" + drcontrolevents[k]["expression"].ToString().Trim() + "','" + drcontrolevents[k]["event_type"].ToString() + "','" + cb1.ID.Substring(cb1.ID.IndexOf("_" + drcontrolevents[k]["source_control"].ToString()) + Convert.ToString("_" + drcontrolevents[k]["source_control"].ToString()).Length + 1) + "');");
    //                                    }
    //                                }
    //                            }
    //                        }
    //                    }
    //                }
    //            }
    //        }
    //    }

    //}

    //void cb2_CheckedChanged(object sender, EventArgs e)
    //{
    //    CheckBox checkbox = (CheckBox)sender;
    //    HiddenField hf = (HiddenField)FindControl(frmMainObj.Controls, "hfeventsender");
    //    if (hf != null)
    //    {
    //        if (hf.Value.ToLower() == checkbox.ID.ToLower())
    //        {
    //            PageControlEvents PCE = new PageControlEvents();
    //            PCE.DoControlEvents(frmMainObj, dsePageInfoMain);
    //            updateTotalAmountOnEvents();
    //        }
    //    }
    //}

    //void textbox2_TextChanged(object sender, EventArgs e)
    //{
    //    TextBox textbox = (TextBox)sender;
    //    HiddenField hf = (HiddenField)FindControl(frmMainObj.Controls, "hfeventsender");
    //    if (hf != null)
    //    {
    //        if (hf.Value.ToLower() == textbox.ID.ToLower())
    //        {
    //            PageControlEvents PCE = new PageControlEvents();
    //            PCE.DoControlEvents(frmMainObj, dsePageInfoMain,textbox.ID);

    //            updateTotalAmountOnEvents();
    //        }
    //    }
    //}

    //void dropdown2_SelectedIndexChanged(object sender, EventArgs e)
    //{
    //    DropDownList Dropdown = (DropDownList)sender;
    //      HiddenField hf = (HiddenField)FindControl(frmMainObj.Controls, "hfeventsender");
    //      if (hf != null)
    //      {
    //          if (hf.Value.ToLower() == Dropdown.ID.ToLower())
    //          {

    //              PageControlEvents PCE = new PageControlEvents();
    //              PCE.DoControlEvents(frmMainObj, dsePageInfoMain);
    //              updateTotalAmountOnEvents();
    //          }
    //      }
                 
    //}

    //void btnRemoveObj_Click(object sender, EventArgs e)
    //{
    //    //Button btnObj = (Button)sender;
    //    ImageButton btnObj = (ImageButton)sender;
    //    //btnObj.Parent.FindControl("tblDynamicMain");
    //    RemovePageRow RPR = new RemovePageRow();
    //    RPR.RemoveRow(frmMainObj, dsePageInfoMain);

    //    updateTotalAmountOnEvents();


    //   //// string page_id = dsePageInfoMain.Tables["Page"].Rows[0]["page_id"].ToString();
    //   //// string tablename = "tbl_" + page_id;

    //   ////HtmlTable htaPageTable = (HtmlTable)FindControl(frmMainObj.Controls,tablename);
    //   ////DataRow[] droPageCtrl = dsePageInfoMain.Tables["PageCtrl"].Select();
    //   ////DataRow[] drTotals = getTotalFields(dsePageInfoMain.Tables["Page"].Rows[0]["af_row_id"].ToString());
    //   ////DataTable dtaPage = dsePageInfoMain.Tables["Page"].Copy();
       
    //   //// HtmlInputHidden hihObj = (HtmlInputHidden)frmMainObj.FindControl("ctl00$_sys" + page_id + "_RowCount");


    //   //// //int intRowCnt = Convert.ToInt32(hihObj.Value);

    //   //// int intRowCnt = Convert.ToInt32(HttpContext.Current.Session["hfrowcount"].ToString());

        
    //   ////// AddTotalFields(htaPageTable, droPageCtrl, drTotals, dtaPage, intRowCnt, frmMainObj, htaPageTable);

    //   //// TransactionDocument TD = new TransactionDocument();
    //   //// TD.updateTotalFields(frmMainObj, drTotals, dsePageInfoMain, intRowCnt);

    //   //// //throw new Exception("The method or operation is not implemented.");
    //}

    //void btnAddObj_Click(object sender,ImageClickEventHandler e)
    //{
    //    //throw new Exception("The method or operation is not implemented.");
    //}
    //private bool PageTooltipAdd(HtmlTable htaMain, DataRow droPage)//, string strMenuRowId, security objSec)
    //{
    //    try
    //    {
    //        if (!droPage.Table.Columns.Contains("page_desc")) return false;
    //        if (droPage["page_desc"].ToString().Trim() == "") return false;
    //        HtmlTableRow htr = new HtmlTableRow();
    //        HtmlTableCell htc = new HtmlTableCell();
    //        htc.Controls.Add(new LiteralControl(getTooltipContent(droPage)));
    //        htr.Controls.Add(htc);
    //        htaMain.Rows.Add(htr);
    //        return true;
    //    }
    //    catch (Exception e)
    //    {
    //        LogWriter.WriteLog("Error in PageTooltipAdd function. Error " + e.Message);
    //        return false;
    //    }
    //}
    //private string getTooltipContent(DataRow droPage)
    //{
    //    if (!droPage.Table.Columns.Contains("page_desc")) return "";
    //    if (droPage["page_desc"].ToString().Trim() == "") return "";
    //    //string ret = "";
    //    //ret = "<div id=\"page_tooltip_div\" style=\"border-bottom:solid 1px #000000;\">";
    //    //ret += "<table border=\"0\" cellpadding=\"5\" cellspacing=\"0\" width=\"100%\"><tr><td width=\"10%\" valign=\"center\" align=\"center\"><img src=\"Images/info.gif\" border=\"0\"></img></td><td width=\"80%\" class=\"controlFont\">";
    //    //ret += droPage["page_desc"].ToString();
    //    //ret += "</td></tr></table>";
    //    //ret +="</div>";
    //    return getContent(HttpContext.Current.Server.MapPath("") + @"\scripts\pagetooltipcontent.txt").Replace("<<content>>", droPage["page_desc"].ToString()); 
    //}
    //private string getContent(string fileName)//created by sanal on 12 Dec 2007
    //{
    //    try
    //    {
    //        if (!System.IO.File.Exists(fileName)) return "";
    //        string temp = "";
    //        System.IO.StreamReader sr = new System.IO.StreamReader(fileName);
    //        temp = sr.ReadToEnd();
    //        sr.Close(); sr = null;
    //        return temp;
    //    }
    //    catch (Exception e)
    //    {
    //        return "";
    //    }
    //}
    //private string getTootipIcon(DataRow droPage)
    //{
    //    try
    //    {
    //        if (!droPage.Table.Columns.Contains("page_desc")) return "";
    //        if (droPage["page_desc"].ToString().Trim() == "") return "";
    //        return "&nbsp;<img id=\"page_tooltip_img\" style=\"cursor:pointer;\" src=\"Images/collapse3.gif\" onClick=\"javascript:showHideTooltipDIV();\" border=\"0\"></img>";
    //    }
    //    catch (Exception e)
    //    {
    //        return "";
    //    }
    //}
    //private bool PageHeaderAdd(HtmlTable htaMain, DataRow droPage, string strMenuRowId, security objSec)
    //{
    //    bool blnStatus = true;
    //    HtmlTableRow htrObj = new HtmlTableRow();
    //    htrObj.Attributes.Add("class", "Dynamic_PageHeaderRow");

    //    HtmlTableCell htcPageCell = new HtmlTableCell();//03-Oct-2007
    //    HtmlTable htPageHeader = new HtmlTable();//03-Oct-2007
    //    //htPageHeader.Border = 1;
    //    if (HttpContext.Current.Request.QueryString["VMODE"] != null)
    //    {
    //        if (HttpContext.Current.Request.QueryString["VMODE"] == "1")
    //        {
    //            if (manageADS()) htPageHeader.Width = "181%";
    //            else htPageHeader.Width = "187%";
    //        }
    //    }
    //    else
    //    { htPageHeader.Width = "100%"; }
    //    HtmlTableRow htrPageHeader = new HtmlTableRow();//03-Oct-2007
    //    int intRowCtrlCnt = -1;
    //    if (droPage["control_per_row"] == DBNull.Value)
    //        intRowCtrlCnt = GlobalValues.DefaultControlPerRow;
    //    else
    //        intRowCtrlCnt = Convert.ToInt32(droPage["control_per_row"].ToString());

    //    HtmlTableCell htcObj = new HtmlTableCell();
    //    string strPageView = "";
    //    if (droPage["page_view"] == DBNull.Value)
    //        strPageView = GlobalValues.DefaultPageView;
    //    else
    //        strPageView = droPage["page_view"].ToString();

    //    if (strPageView == "1")
    //        htcObj.ColSpan = intRowCtrlCnt + 1;
    //    else if (strPageView == "2")
    //        htcObj.ColSpan = (intRowCtrlCnt * 2) + 1;

    //    string strPageSetId = "";
    //    string strHeaderText = droPage["page_name"].ToString();


    //    strHeaderText = GetPageIcons(droPage["page_id"].ToString()).Text + strHeaderText; // Added by srivatsan


    //    if (HttpContext.Current.Request.QueryString["PK"] == null)
    //        strHeaderText = strHeaderText + " - Add";
    //    else
    //    {
    //        if (HttpContext.Current.Request.QueryString["CPY"] != null)
    //           strHeaderText = strHeaderText + " - Copy";
    //        else if (HttpContext.Current.Request.QueryString["VMODE"] != null)
    //           strHeaderText = strHeaderText + " - View";
    //        else
    //           strHeaderText = strHeaderText + " - Edit";
    //    }

    //   // strHeaderText += getTootipIcon(droPage);

    //    if (frmMainObj.Page.Request.QueryString["pgs_id"] != null)
    //        strPageSetId = frmMainObj.Page.Request.QueryString["pgs_id"].ToString();

    //    htcObj.Controls.Add(new LiteralControl(strHeaderText));
    //    //if (HttpContext.Current.Request.QueryString["PK"] != null)
    //    //    htcObj.Width = "42%";//03-Oct-2007
    //    //else
    //    //    htcObj.Width = "36%";
    //    htcObj.Width = "30%"; // modified by srivatsan (34% to 29%)
    //    htrPageHeader.Cells.Add(htcObj);//htrObj.Cells.Add(htcObj);
    //    bool blnMultiplePage = false;
    //    string strPageId = droPage["page_id"].ToString();
    //    blnMultiplePage = Convert.ToBoolean(droPage["multiple_recs_page"].ToString());
    //    ImageButton btnAddObj = null;

    //    if (blnMultiplePage)
    //    {
    //        // btnAddObj = new Button();  // commented by srivatsan //Button btnAddObj = new Button();
    //        btnAddObj = new ImageButton();//Button btnAddObj = new Button();
    //        btnAddObj.ID = "btn_" + strPageId + "_Add_1";
    //        //btnAddObj.Text = "Add";
    //        btnAddObj.AlternateText = "Add";
    //        btnAddObj.ToolTip = "Add";
    //        btnAddObj.ImageUrl = "Images/add.GIF";
    //        btnAddObj.Click += new ImageClickEventHandler(btnAddObj_Click);   //uncommented by srivatsan on May 21 2009
    //        btnAddObj.OnClientClick = "updateclickstatus('add'); return AddRow('" + strPageId + "')";
    //        //htcObj.Controls.Add(btnAddObj);
    //        //btnAddObj.UseSubmitBehavior = false;
    //    }

    //    //if (blnMultiplePage)  // old place for ADD buttons
    //    //{
    //    //    if (HttpContext.Current.Request.QueryString["VMODE"] == null)
    //    //    {
    //    //        htcObj.Align = "Left";
    //    //        htcObj.Controls.Add(new LiteralControl("&nbsp;&nbsp;&nbsp;&nbsp;"));
    //    //        htcObj.Controls.Add(btnAddObj);
    //    //        htcObj.Controls.Add(new LiteralControl("&nbsp;Add"));
    //    //        //htrPageHeader.Controls.Add(htcObj);
    //    //    }
    //    //}
        


    //    htcObj = new HtmlTableCell();
       
        
        
    //    //Button btnAddObj = null; comented by srivatsan

       


    //    if (htaMain.Rows.Count < 1)//changed by Prithi on 14-nov-2008
    //    {
    //        //Label lblObj = new Label();
    //        ////strHeaderText = @"<a href=""DisplayGrid.aspx?pgs_id=" + strPageSetId + "&mn=" + strMenuRowId + @"""><font color=""black""><b>List</b></font></a>";
    //        //strHeaderText = @"<a href=""#"" onClick=""javascript:history.back();return false;""><font color=""black""><b>&lt;&lt;&nbsp;Back</b></font></a>";
    //        //lblObj.Text = strHeaderText;
    //        ////lblObj.Width = 100;
    //        //htcObj.Controls.Add(lblObj);
    //        Literal l = new Literal();
    //        l.Text = "&nbsp;";
    //        htcObj.Controls.Add(l);
    //        htcObj.ID = blnMultiplePage ? "addNoButtons" : "addButtons";
    //        htcObj.Width = "37%"; // modified by srivatsan (33% to 38%)
    //        htcObj.Align = "Right";

    //        if (blnMultiplePage)
    //        {
    //            if (HttpContext.Current.Request.QueryString["VMODE"] == null)
    //            {
    //                htcObj.Align = "Left";
    //                htcObj.Controls.Add(new LiteralControl("&nbsp;&nbsp;"));
    //                htcObj.Controls.Add(btnAddObj);
    //                htcObj.Controls.Add(new LiteralControl("&nbsp;Add"));
    //                //htrPageHeader.Controls.Add(htcObj);
    //            }
    //        }
    //        //getHeaderButtons(ref htcObj);
    //    }
    //   // //added for view mode
    //    //if (HttpContext.Current.Request.QueryString["VMODE"] != null)
    //      //  if (HttpContext.Current.Request.QueryString["VMODE"] == "1")
    //       //     blnMultiplePage = false;
        
    //   // //add button to be disable in edit mode
    //   // if (HttpContext.Current.Request.QueryString["CPY"] == null)
    //     //   if (HttpContext.Current.Request.QueryString["PK"] != null)
    //        //    blnMultiplePage = false;

    //    if (!objSec.getObjectRightsForUser(droPage["object_id"].ToString(), "create")) blnMultiplePage = false;


       
       

    //    if (htcObj.Controls.Count > 0)
    //    {
    //        //htcObj.Width = "250px";
    //        htcObj.Width = "33%";
    //        htcObj.Align = "Center";
    //        htrPageHeader.Cells.Add(htcObj);
    //        htcObj = new HtmlTableCell();
    //    }
    //    //htcObj.Width = "250px";
    //    htcObj.Width = "33%";

    //    if (blnMultiplePage)
    //    {
    //        //htcObj.Align = "Left";
    //        //htcObj.Controls.Add(btnAddObj);
    //       // htcObj.Controls.Add(new LiteralControl("&nbsp;Add"));
    //       // htrPageHeader.Controls.Add(htcObj);
    //    }


        


    //    htcObj = new HtmlTableCell();

    //    //// Added by srivatsan
    //    //try
    //    //{

    //    //    //if (HttpContext.Current.Request.QueryString["PK"] == null)
    //    //    //{

    //    //    //}
    //    //    if(HttpContext.Current.Request.QueryString["PK"]!=null)
    //    //    {
    //    //        //LinkButton linkbutton = new LinkButton();
    //    //        ImageButton linkbutton = new ImageButton();
    //    //        //linkbutton.Text = "Printable page";
    //    //        //linkbutton.Font.Name = "Arial";
    //    //        //linkbutton.Font.Size = FontUnit.XXSmall;
    //    //        linkbutton.ToolTip = "Printer friendly page";
    //    //        linkbutton.ImageUrl = "Images/mb_button_print.GIF";
    //    //        linkbutton.OnClientClick = "javascript:Popup=(window.open('Print.aspx?pgs_id=" + strPageSetId + "&PK=" + HttpContext.Current.Request.QueryString["PK"].ToString() + "&mn=" + HttpContext.Current.Request.QueryString["mn"].ToString() + "','Popup','toolbar=no,location=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,width=800,height=630,left=100,top=30')||window).focus(); return false;";

    //    //        if (HttpContext.Current.Request.QueryString["VMODE"] != null)
    //    //        {

    //    //            if (HttpContext.Current.Request.QueryString["VMODE"] == "1")
    //    //            {
    //    //                linkbutton.Visible = false;
    //    //            }

    //    //        }
    //    //        htcObj.Controls.Add(linkbutton);
                
    //    //    }
    //    //}
    //    //catch
    //    //{
    //    //}

        
       
    //    ImageButton imgHelp = new ImageButton();
    //    //imgHelp.ID = "imgHelp";
    //    //imgHelp.ID = dsePageInfoMain.Tables["Page"].Rows[0]["page_id"].ToString(); // srivatsan May  05 2009

    //    //imgHelp.ImageUrl = "images/ic_help.png";
    //    imgHelp.ImageUrl = "images/ic_help.GIF"; // Added by srivatsan on Feb 20 2009
    //    imgHelp.Visible = false;
    //    htcObj.Align = "right";
    //    htcObj.Controls.Add(imgHelp);
    //    htcObj.Controls.Add(new LiteralControl("&nbsp;"));
    //    htcObj.Width = "33%"; // 33
    //    htrPageHeader.Controls.Add(htcObj);
        

    //    htPageHeader.Attributes.Add("class", "Dynamic_PageHeaderRow");
    //    htPageHeader.Rows.Add(htrPageHeader);
    //    htcPageCell.Controls.Add(htPageHeader);
    //    htrObj.Cells.Add(htcPageCell);
    //    htaMain.Rows.Add(htrObj);
    //    return blnStatus;
    //}

    //void btnAddObj_Click(object sender, ImageClickEventArgs e)
    //{
    //    //HttpContext.Current.Session["hfrowcountadd"] = (Convert.ToInt32(HttpContext.Current.Session["hfrowcount"].ToString()) + 1).ToString();
    //   // HttpContext.Current.Session["hfrowcount"] = HttpContext.Current.Session["hfrowcountadd"].ToString();
    //    //throw new Exception("The method or operation is not implemented.");
    //    //DataSet dsInput = new DataSet();
    //    //string pageset_id = dsePageInfoMain.Tables["PageSet"].Rows[0]["pageset_id"].ToString();
    //    //Load(pageset_id,frmMainObj,dsePageInfoMain,dsInput);
    //    updateaf_row_id();
    //    updateTotalAmountOnEvents();
    //}

    //public DataTable getAllChildObjects(string PagesetId)
    //{
    //    DataTable dtChildObjects = new DataTable();
    //    try
    //    {
    //        string sPage_id = "";
    //        string sObject_Id = "";
    //        string sAF_ROW_ID = "";
    //        string sSql = "select af_row_id from sy_pgs where pageset_id='" + PagesetId + "'";
    //        //string sSql = "select pg.object_id from sy_pg pg inner join sy_pgs_mem pgs_mem on pg.page_id=pgs_mem.page_id inner join sy_pgs pgs on pgs.af_row_id=pgs_mem.pageset_id where pgs.pageset_id = '" + PagesetId + "'";
    //        sAF_ROW_ID = HDD.GetColumnValue(sSql);
    //        sSql = "select page_id from sy_pgs_mem where pageset_id='" + sAF_ROW_ID + "'";
    //        sPage_id = HDD.GetColumnValue(sSql);
    //        sSql = "select object_id from sy_pg where page_id='" + sPage_id + "'";
    //        sObject_Id = HDD.GetColumnValue(sSql);
    //        sSql = "select * from sy_obj_mas_detail where master_obj = '" + sObject_Id + "'";
    //        dtChildObjects = HDD.GetDataTable(sSql);
    //    }

    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("getAllChildObjects : Error : " + ex.Message);
    //    }
    //    return dtChildObjects;
    //}
    //private bool manageADS()
    //{
    //    bool breturn = false;
    //    try
    //    {

    //        HDDatabase hddAD = new HDDatabase(HttpContext.Current.Session["servercon"].ToString());
    //        DataTable dt = hddAD.GetDataTable("select * from ngcompany where company_id='" + HttpContext.Current.Session["company_id"].ToString() + "'");
    //        dt = hddAD.GetDataTable("select * from AD_Manager where company_id='" + dt.Rows[0]["af_row_id"].ToString() + "' and show_ads=1 order by sequence");
    //        if (dt != null)
    //            if (dt.Rows.Count > 0) breturn = true;

    //    }
    //    catch (Exception e)
    //    {
    //        LogWriter.WriteLog("manageADS : Error : " + e.Message);
    //    }
    //    return breturn;

    //}

    //public void getPagesetandLoad(DataTable dtChildObjects, HtmlForm frmobj)
    //{
    //    GenerateGrid GG=null;
    //    try
    //    {
    //        string sPageset_id = "";
    //        foreach (DataRow dr in dtChildObjects.Rows)
    //        {
    //            sPageset_id=getPagesetId(dr["object_id"].ToString());
    //            GG = new GenerateGrid();
    //            if (sPageset_id != "")
    //                GG.DisplayPage(sPageset_id, frmobj);
    //        }
    //    }
    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("getPagesetandLoad : Error : " + ex.Message);
    //    }
    //    finally
    //    {
    //        if (GG != null) GG = null;
    //    }
    //}

    //private string getPagesetId(string Object_Id)
    //{
    //    string sPageset_Id = "";
    //    try
    //    {
    //        string sPage_id = "";
    //        string sAF_ROW_ID = "";
    //        string sSql = "";
    //        sSql = "select object_id from sy_obj where af_row_id='" + Object_Id + "'";
    //        Object_Id = HDD.GetColumnValue(sSql);
    //        sSql = "select page_id from sy_pg where object_id='" + Object_Id + "'";
    //        sPage_id = HDD.GetColumnValue(sSql);
    //        sSql = "select pageset_id from sy_pgs_mem where page_id='" + sPage_id + "'";
    //        sAF_ROW_ID = HDD.GetColumnValue(sSql);
    //        sSql = "select pageset_id from sy_pgs where af_row_id='" + sAF_ROW_ID + "'";
    //        sPageset_Id = HDD.GetColumnValue(sSql);
    //    }
    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("getPagesetId : Error : " + ex.Message);
    //    }
    //    return sPageset_Id;
    //}

    //private Literal GetPageIcons(string pageid) // Added by srivatsan for Icon Display in Pages
    //{
    //    Literal iconlit = new Literal();
    //    PageIcons icons = new PageIcons();
    //    try
    //    {
    //        string icontext = icons.geticons(pageid, 2);
    //        icons = null;
    //        iconlit.Text = "&nbsp;<img src = " + icontext + "></img>&nbsp;";
    //    }
    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("Error GetPageIcons:" + ex.Message);
    //        iconlit.Text = "&nbsp;<img src = " + PageIcons.strdefaulticon.ToString() + "></img>&nbsp; ";
    //    }
    //    finally
    //    {
    //        icons = null;
    //    }
    //    return iconlit;


    //}

    //private void AddTransDocCaptions(HtmlTable htaPageTable, DataRow[] droPageCtrl, DataTable dtaPageKeys)
    //{
    //    HtmlTableCell htc = new HtmlTableCell();
    //    //htc.Attributes.Add("class", "Dynamic_TransDocHtmlTableCell");
    //    htc.Width = "100%";
    //    HtmlTableRow htr = new HtmlTableRow();
    //    string masterdetailfield = "";
    //    //htc.Controls.Add(new LiteralControl("&nbsp;")); // Added for sequence number
    //    //htr.Controls.Add(htc);
    //    htc = new HtmlTableCell();
    //    htc.Controls.Add(new LiteralControl("&nbsp;"));
    //    htr.Controls.Add(htc);

    //    for (int i = 0; i < droPageCtrl.Length; i++)
    //    {
    //        if (droPageCtrl[i]["control_visible"].ToString().ToLower() == "true")
    //        {

    //            DataRow[] drr = dtaPageKeys.Select("attrib_id='" + droPageCtrl[i]["control_attrib_id"].ToString() + "'");
    //            if (drr.Length > 0)
    //            {
    //                masterdetailfield = drr[0]["attrib_id"].ToString().ToLower();
    //            }
    //            htc = new HtmlTableCell();
    //            Label lblobj = new Label();
    //            lblobj.CssClass = "controlLabelFont";
    //            lblobj.ID = "lb_" + droPageCtrl[i]["control_attrib_id"].ToString();
    //            lblobj.Text = droPageCtrl[i]["control_name"].ToString();
    //            if (droPageCtrl[i]["control_attrib_id"].ToString().ToLower() == masterdetailfield || droPageCtrl[i]["control_attrib_id"].ToString().ToLower() == "owner_id")
    //            {
    //                lblobj.Visible = false;
    //            }                      
                    
                
    //            htc.Controls.Add(lblobj);
    //            htr.Controls.Add(htc);
    //        }
    //    }
    //   //htc = new HtmlTableCell();
    //    //htc.Controls.Add(htr);
    //    htaPageTable.Controls.Add(htr);

    //}

    //private void AddTotalFields(HtmlTable ht,DataRow[] dr,DataRow[] totalfield,DataTable dtaPage,int rowcount,HtmlForm frm,HtmlTable htapagetable)
    //{
    //    HtmlTableRow htr = new HtmlTableRow();
    //    //htr.BgColor = "RED";
    //    HtmlTableCell htc = new HtmlTableCell();
    //  //  htc.Align = "Right";
    //    try
    //    {
    //        if (totalfield.Length > 0)
    //        {
    //            htr.Controls.Add(htc);

    //            for (int i = 0; i < dr.Length; i++)
    //            {
    //                htc = new HtmlTableCell();
    //                for (int j = 0; j < totalfield.Length; j++)
    //                {
    //                    if (dr[i]["control_attrib_id"].ToString().ToLower() == totalfield[j]["attrib_id"].ToString().ToLower())
    //                    {
    //                        Label lbltotal = new Label();
    //                        string actualattrib_id = totalfield[j]["attrib_id"].ToString();
    //                        string page_id = dtaPage.Rows[0]["page_id"].ToString();
    //                        GetTotalAmount(dtaPage.Rows[0]["page_id"].ToString(), rowcount, frm,htapagetable);
    //                        //lbltotal.Text = totalfield[j]["attrib_id"].ToString();
    //                        //lbltotal.CssClass = "controlLabelFont";
    //                        lbltotal.ID = "total_" + page_id +"_"+actualattrib_id;
    //                        htc.Controls.Add(lbltotal);
    //                        htc.Align = "Right";
                            
    //                    }
    //                    if (Convert.ToBoolean(dr[i]["control_visible"].ToString()))
    //                    {
    //                        htr.Controls.Add(htc);
    //                    }
                        
    //                }
    //               // htr.Controls.Add(htc);
    //            }
    //        }
    //        ht.Controls.Add(htr);
    //    }
    //    catch(Exception ex)
    //    {
    //        LogWriter.WriteLog("Error Add Total Fields :"+ex.Message);
    //    }
    //}

    //public DataRow[] getTotalFields(string pageid)
    //{
    //    DataSet ds = new DataSet();
    //    DataRow[] dr = null;
    //    try
    //    {
    //        string sql = "select * from sy_trans_doc_totals where page_id = '"+pageid+"'";
    //        ds =HDD.GetDataset(sql);

    //        dr = ds.Tables[0].Select();
            
    //    }
    //    catch (Exception ex)
    //    {
    //        LogWriter.WriteLog("Error getTotalFields :"+ex.Message);
    //    }
    //    return dr;
    //}

    //private void GetTotalAmount(string pageid,int rowcount,HtmlForm frmobj,HtmlTable htapagetable)
    //{
    //    for (int i = 1; i < rowcount; i++)
    //    {
    //        TextBox txt = (TextBox)FindControl(frmobj.Controls, "p_pg_ctr_");

    //        TextBox txt1 = (TextBox)FindControl(frmobj.Controls, "ctl00_ContentPlaceHolder3_p_pg_ctr_control_seq_1");
    //        TextBox txt3 = (TextBox)FindControl(frmobj.Controls, "p_pg_ctr_control_seq_1");
    //        HtmlTable ht = (HtmlTable)FindControl(frmobj.Controls, "ctl00_ContentPlaceHolder3_tbl_p_pg_ctr");

    //        Control cn = (Control)htapagetable.FindControl("ctl00_ContentPlaceHolder3_p_pg_ctr_control_seq_1");
            
    //        if (frmobj.FindControl("ctl00_ContentPlaceHolder3_p_pg_ctr_control_bind_id_6") != null)
    //        {

    //        }
    //    }
    //}

    //private Double Convert2Double(string txt)
    //{
    //    Double result = 0;
    //    try
    //    {
    //        if (txt == "")
    //        {
               
    //        }
    //        else
    //        {
    //            result = double.Parse(txt);
    //        }
    //    }
    //    catch (Exception ex)
    //    {
    //        result = 0;
    //    }
    //    return result;

    //}


    //private void updateTotalAmountOnEvents()
    //{
    //    return;
    //    string page_id = dsePageInfoMain.Tables["Page"].Rows[0]["page_id"].ToString();
    //    string tablename = "tbl_" + page_id;

    //    HtmlTable htaPageTable = (HtmlTable)FindControl(frmMainObj.Controls, tablename);
    //    DataRow[] droPageCtrl = dsePageInfoMain.Tables["PageCtrl"].Select();
    //    DataRow[] drTotals = getTotalFields(dsePageInfoMain.Tables["Page"].Rows[0]["af_row_id"].ToString());
    //    DataTable dtaPage = dsePageInfoMain.Tables["Page"].Copy();

    //    //HtmlInputHidden hihObj = (HtmlInputHidden)frmMainObj.FindControl("ctl00$_sys" + page_id + "_RowCount");
    //    //int intRowCnt = Convert.ToInt32(hihObj.Value);
    //    int intRowCnt = Convert.ToInt32(HttpContext.Current.Session["hfrowcount"].ToString());
    //    // AddTotalFields(htaPageTable, droPageCtrl, drTotals, dtaPage, intRowCnt, frmMainObj, htaPageTable);

    //    TransactionDocument TD = new TransactionDocument();
    //    TD.updateTotalFields(frmMainObj, drTotals, dsePageInfoMain, intRowCnt);
    //}


    //private void updateaf_row_id()
    //{
    //    ScreenReader SR = new ScreenReader();
    //    string pageid = dsePageInfoMain.Tables["page"].Rows[0]["page_id"].ToString();
    //    int rowcount = int.Parse(HttpContext.Current.Session["hfrowcount"].ToString());

    //    if (frmMainObj != null)
    //    {
    //        for(int i=1;i<=rowcount;i++)
    //        {
    //            string controlid = pageid + "_af_row_id_" + i;
    //            HiddenField hf = (HiddenField)FindControl(frmMainObj.Controls, controlid);
    //            if (hf != null)
    //            {
    //                if (hf.Value == "")
    //                {
    //                    hf.Value = SR.getHashKey();
    //                }
    //            }
    //        }
    //    }
    //}
   


}

